package com.qf.common.core.entity.order;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import javax.validation.constraints.NotNull;

import java.io.Serializable;

import java.util.Date;
import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

/**
* 
* @TableName order
*/
@TableName(value="`order`")
@Data
public class Order implements Serializable {

    /**
    * 
    */
    @ApiModelProperty("")
    private Integer orderId;
    /**
    * 订单编号
    */
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("订单编号")
    @Length(max= 255,message="编码长度不能超过255")
    private String orderCode;
    /**
    * 支付编号
    */
    @Size(max= 11,message="编码长度不能超过11")
    @ApiModelProperty("支付编号")
    @Length(max= 11,message="编码长度不能超过11")
    private String paymentNumber;
    /**
    * 用户id
    */
    @ApiModelProperty("用户id")
    private Integer userId;
    /**
    * 订单时间
    */
    @ApiModelProperty("订单时间")
    private Date orderTime;
    /**
    * 订单来源 1 PC商城 2 H5商城 3 小程序
    */
    @ApiModelProperty("订单来源 1 PC商城 2 H5商城 3 小程序")
    private Integer orderSource;
    /**
    * 配送类型 1 快递配送 2自提点自提
    */
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("配送类型 1 快递配送 2自提点自提")
    @Length(max= 255,message="编码长度不能超过255")
    private String shippingMethod;
    /**
    * 订单状态 1待支付、2待发货、3待收货、4已完成、5待评价
    */
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("订单状态 1待支付、2待发货、3待收货、4已完成、5待评价")
    @Length(max= 255,message="编码长度不能超过255")
    private Integer orderStatus;
    /**
    * 订单总金额
    */
    @ApiModelProperty("订单总金额")
    private BigDecimal totalAmount;
    /**
    * 实付金额
    */
    @ApiModelProperty("实付金额")
    private BigDecimal realAmount;
    /**
    * 收货人
    */
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("收货人")
    @Length(max= 255,message="编码长度不能超过255")
    private String consigneeName;
    /**
    * 收货人电话
    */
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("收货人电话")
    @Length(max= 255,message="编码长度不能超过255")
    private String consigneePhone;
    /**
    * 收件地址
    */
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("收件地址")
    @Length(max= 255,message="编码长度不能超过255")
    private String consigneeAddress;
    /**
    * 备注
    */
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("备注")
    @Length(max= 255,message="编码长度不能超过255")
    private String remark;
    /**
    * 评价id
    */
    @ApiModelProperty("评价id")
    private Integer evaluateId;




}
